//
//  UILabel+Extension.h
//  Practice
//
//  Created by yons on 13.8.20.
//  Copyright © 2020 yons. All rights reserved.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface UILabel (Extension)

#pragma mark -----------------------🍺🍺🍺----------------------- Class Func -----------------------🍺🍺🍺-----------------------

/// 显示背景颜色(类方法)
/// @param backgroundColor 背景色
+ (UILabel *)labelWithBackgroundColor:(UIColor *)backgroundColor;

/// 文本色+文本大小+字重(类方法)
/// @param textColor 文本色
/// @param size 文本大小
/// @param weight 字重
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight;

/// 文本色+文本大小+字重+target+方法(类方法)
/// @param textColor 文本色
/// @param size 文本大小
/// @param weight 字重
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight target:(nullable id)target action:(nullable SEL)action;

/// 文本颜色+文本大小+字重+圆角半径(类方法)
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius;

/// 文本颜色+文本大小+字重+圆角半径+target+方法((类方法)
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius target:(nullable id)target action:(nullable SEL)action;

/// 文本+文本颜色+文本大小+字重+圆角半径+边框宽度+边框颜色(类方法)
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param borderWidth 边框宽度
/// @param borderColor 边框颜色
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor;

/// 文本+文本颜色+文本大小+字重+圆角半径+边框宽度+边框颜色+target+方法(类方法)
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param borderWidth 边框宽度
/// @param borderColor 边框颜色
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithTextColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor target:(nullable id)target action:(nullable SEL)action;

/// 文本+文本颜色+大小+字重(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 文本weight
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight;

/// 文本+文本颜色+大小+字重+target+方法(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 文本weight
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight target:(nullable id)target action:(nullable SEL)action;

/// 文本+文本颜色+文本大小+字重+圆角半径(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius;

/// 文本+文本颜色+文本大小+字重+圆角半径+target+方法(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius target:(nullable id)target action:(nullable SEL)action;

/// 文本+文本颜色+文本大小+字重+圆角半径+边框宽度+边框颜色(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param borderWidth 边框宽度
/// @param borderColor 边框颜色
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor;

/// 文本+文本颜色+文本大小+字重+圆角半径+边框宽度+边框颜色+target+方法(类方法)
/// @param text 文本
/// @param textColor 文本颜色
/// @param size 文本大小
/// @param weight 字重
/// @param radius 圆角
/// @param borderWidth 边框宽度
/// @param borderColor 边框颜色
/// @param target target
/// @param action 方法
+ (UILabel *)labelWithText:(NSString *)text textColor:(UIColor *)textColor fontSize:(CGFloat)size weight:(UIFontWeight)weight radius:(CGFloat)radius borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor target:(nullable id)target action:(nullable SEL)action;

/// @param target target
/// @param action 方法
- (void)addTarget:(nullable id)target action:(nullable SEL)action;

@end

NS_ASSUME_NONNULL_END
